;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 (unmatched parenthesis <paren@disroot.org>
;;;
;;; This file is not part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (guixrus contributors)
  #:use-module (guix records)

  #:export (contributor
            contributor?
            contributor-name
            contributor-email
            contributor-home-page
            contributor-donation-page

            akib
            jgart
            dhruvin
            raghavgururajan
            unmatched-paren
            attila-lendvai
            florhizome
            roptat
            singpolyma
            muradm
            efraim
            nckx
            pkill9
            unwox))

(define-record-type* <contributor>
  contributor make-contributor
  contributor?

  (username contributor-username)          ;string
  (name contributor-name                   ;string | #f
        (default #f))
  (email contributor-email)                ;list of string
  (home-page contributor-home-page         ;string | #f
             (default #f)))


(define akib
  (contributor
   (username "akib")
   (name "Akib Azmain Turja")
   (email (list "akib@disroot.org"))
   (home-page "https://codeberg.org/akib")))

(define jgart
  (contributor
   (username "jgart")
   (email (list "jgart@dismail.de"))
   (home-page "gemini://jgart.whereis.みんな")))

(define dhruvin
  (contributor
   (username "dhruvin")
   (name "Dhruvin Gandhi")
   (email (list "contact@dhruvin.dev"))
   (home-page "https://dhruvin.dev/")))

(define raghavgururajan
  (contributor
   (username "raghavgururajan")
   (name "Raghav Gururajan")
   (email (list "rg@raghavgururajan.name"))
   (home-page "https://raghavgururajan.name")))

(define unmatched-paren
  (contributor
   (username "unmatched-paren")
   (name "(")
   (email (list "paren@disroot.org"))))

(define attila-lendvai
  (contributor
   (username "attila-lendvai")
   (name "Attila Lendvai")
   (email (list "attila@lendvai.name"))
   (home-page "https://lendvai.name")))

(define florhizome
  (contributor
   (username "florhizome")
   (email (list "florhizome@posteo.de"))))

(define roptat
  (contributor
   (username "roptat")
   (name "Julien Lepiller")
   (email (list "julien@lepiller.eu"))
   (home-page "https://lepiller.eu")))

(define singpolyma
  (contributor
   (username "singpolyma")
   (name "Stephen Paul Weber")
   (email (list "singpolyma@singpolyma.net"))
   (home-page "https://singpolyma.net")))

(define muradm
  (contributor
   (username "muradm")
   (email (list "mail@muradm.net"))
   (home-page "https://muradm.net")))

(define efraim
  (contributor
   (username "efraim")
   (name "Efraim Flashner")
   (email (list "efraim@flashner.co.il"))
   (home-page "https://flashner.co.il")))

(define nckx
  (contributor
   (username "nckx")
   (name "Tobias Geerinckx-Rice")
   (email (list "me@tobias.gr"))
   (home-page "https://tobias.gr")))

(define pkill9
  (contributor
   (username "pkill9")
   (email (list "pkill9@runbox.com"))))

(define unwox
  (contributor
   (username "unwox")
   (email (list "me@unwox.com"))
   (home-page "https://unwox.com")))
